package Test26;

//静态内部类
/*
    注意事项：
    1.静态内部类也是成员内部类中的一种
    2.静态内部类只能访问外部类中的静态变量和静态方法，
      如果想要访问非静态的需要创建外部类的对象。

    创建静态内部类对象的格式:
            外部类名.内部类名 对象名= new 外部类名.内部类名();
            对象名.方法名
    调用静态方法的格式:
        外部类名.内部类名.方法名();
*/


public class Test04 {
    public static void main(String[] args) {

        //创建静态内部类的对象
        //只要是静态的东西，都可以用类名点直接获取
        Outer04.Inter oi = new Outer04.Inter();
        oi.show1();

        //静态方法
        Outer04.Inter.show2();
    }
}

class Outer04 {
    int a = 10;
    static int b = 20;

    //静态内部类
    static class Inter {

        public void show1() {
            /*Outer04 o = new Outer04();
            System.out.println(o.a);
            System.out.println(b);*/
            System.out.println("非静态的方法被调用了");
        }

        public static void show2() {
           /*Outer04 o = new Outer04();
            System.out.println(o.a);
            System.out.println(b);*/
            System.out.println("静态的方法被调用了");
        }
    }
}
